import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.util.*; 
/**
 * Clase para Mostrar un Cronometro en pantalla
 * @author Programación Orientada a Objetos (Adrian Cerda Cerda , Jorge Armando Tovar Ojeda)
 * @version Maze of Souls (27 de noviembre del 2012)
 */
 

public class Cronometro extends Actor
{
   private Date contador; //para hacer referencia a un objeto de tipo Date para el tiempo inicial
   private Date contador2;//para hacer referencia a un objeto de tipo Date para el tiempo final
   /** 
    * Para realizar las acciones del Cronometro que son inicilizarlo y actualizarlo
    */
    public void act() 
    {
        if(contador == null)
        this.inicializarCrono();
        this.actualizarCrono();
    }    
    /** 
     * Constructor para la clase Cronometro
     */
    public Cronometro()
    {
        contador = null;
        this.setImage(new GreenfootImage(
                          " TIEMPO  300",
                          10,java.awt.Color.BLUE,
                          java.awt.Color.RED));
    }
    /**
     * Permite inicializar el Cronometro
     */
    public void inicializarCrono()
    {
        contador= new Date();
    }
    /**
     * Actualiza el valor del Cronometro  cada segundo
     */
    public void actualizarCrono()
    {
          contador2 = new Date();
        this.setImage(new GreenfootImage(" TIEMPO"+"\n"+
                           String.valueOf(300-(contador2.getTime() - contador.getTime())/1000)+" "
                          ,20,java.awt.Color.RED
                          ,java.awt.Color.GREEN));
        if((300-(contador2.getTime() - contador.getTime())/1000)==0)
        {
           Mensaje m= new Mensaje("Perdiste se te termino"+ "\n"+ "tu Tiempo", 30); 
           getWorld().addObject(m, 350, 300);
           m.imprime();
           Greenfoot.delay(200);
            ((Fondo)this.getWorld()).detener();
            ((Fondo)this.getWorld()).menuOpsion(0,0);
        }
    }
    /**
     * Poner el Cronometro en nulo para poderlo inicializar
     */
    public void modifCont()
    {
        contador=null;
    }
}
